#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<fcntl.h>
#include<string.h>
#include<arpa/inet.h>
#include<pthread.h>
int main(void)
{

    struct sockaddr_in serv_addr;
    int sockfd,ndata;
    char buf[1024];
    sockfd=socket(AF_INET,SOCK_DGRAM,0);
    bzero(&serv_addr,sizeof(serv_addr));

    serv_addr.sin_family=AF_INET;
    inet_pton(AF_INET,"127.0.0.1",&serv_addr.sin_addr.s_addr);
    serv_addr.sin_port=htons(9999);

    while(fgets(buf,1024,stdin)!=NULL)
    {
        //客户端向服务端发送数据
        ndata=sendto(sockfd,buf,strlen(buf),0,(struct sockaddr*)&serv_addr,sizeof(serv_addr));//sendto类似write，将数据写到sockfd中
        
        //server端进行数据处理后，在从sockfd读数据，保存在buf中
        ndata=recvfrom(sockfd,buf,1024,0,NULL,0);//recvfrom类似read，从sockfd读数据到buf中

        write(STDOUT_FILENO,buf,ndata);
    }
    close(sockfd);
}

